package com.dap.cms.governance.service;

import com.dap.cms.governance.po.CmsUserPo;
import com.dap.cms.base.IBaseService;
import com.dap.cms.governance.vo.UserInfoVo;
import com.dap.dao.model.QueryResult;

/**
 * @description: t_cms_user表对应的服务接口
 * @author: Fesine
 * @createTime:2018/08/20
 * @update:修改内容
 * @author: Fesine
 * @updateTime:2018/08/20
 */
public interface CmsUserService extends IBaseService<CmsUserPo> {
    /**
     * 删除系统用户
     * @param cmsUserPo
     */
    void deleteUser(CmsUserPo cmsUserPo);

    /**
     * 添加用户
     * @param cmsUserPo
     */
    void addCmsUserPo(CmsUserPo cmsUserPo);

    /**
     * 校验用户名是否被占用
     * @param name
     * @return
     */
    Boolean checkName(String name);

    /**
     * 添加组件接入者
     * @param cmsUserPo
     * @param componentIds
     */
    void addCmsUserPoAndComponent(CmsUserPo cmsUserPo, String componentIds);

    /**
     * 公司系统负责人注册
     * @param name
     * @param companyName
     * @param sysName
     */
    void register(String name,String telephone, String companyName, String sysName,String password);

    QueryResult<UserInfoVo> listUserInfo(UserInfoVo userInfoVo, Integer pageIndex, Integer pageSize);

    void updateUser(CmsUserPo cmsUserPo, String componentIds,String oldUserName);
}



